behi پیغام مدیر : ورود شما را به این وبلاگ خوش آمد عرض می کنم . امیدوارم مطالب این وبلاگ مورد استفاده ی شما قرار گیرد . نکته نظرات خود را برای بهبود وبلاگ مطرح نمایید .
VRMLکه به صورت یا تلفظ می شود، کلمه ای اختصاری برای Virtual Reality Modeling Language است .همان طور که حدس می زنید، VRML چیزی شبیه HTML یا همان است .
HTMLبرای طراحی یک صفحه دو بعدی و VRML برای ساخت صحنه های سه بعدی که اصطلاحا به آنها Virtual World گفته می شود، به کار می رود .دقت کنید که نتیجه اجرای فایل های HTML یک محیط دو بعدی است که اصطلاح صفحه را برای آن به کار بردیم ، ولی اجرای فایل های VRML توسط مرورگر، یک فضای سه بعدی را می سازد که اصطلاح صحنه را برایش به کار گرفتیم .
VRMLبه نحوی توسعه داده شده که به HTML وابسته نباشد، با این حال در VRML نیز از همان پروتکل ها برای انتقال فایل از طریق اینترنت استفاده شده است .بنابراین هر چیز که در مورد اینترنت و وب آموخته اید، در VRML هم کاربرد خواهد داشت .شما می توانید فایل های ساخته شده توسط VRML را با مرورگرهای VRML یا مرورگرهای معمولی HTML مثل Internet Explorer 4 به بالا مشاهده کنید .آدرس (URL) فایل های VRML شبیه فایل های HTML به نظر می رسند، با این تفاوت که پسوند فایل های HTML به صورت .html و .htm است، در حالی که در فایل های (World files) VRML از پسوندهای.flr ، .wrz و .wrl استفاده می شود.فایل های VRML فقط محتوی متن هستند، با این حال پس از خوانده شدن توسط مرورگرها، یک محیط کاملا گرافیکی را می سازند.
مهمترین نقش VRML1 این است که مشخص کند چگونه یک صحنه سه بعدی در دنیای مجازی ساخته شود. هدف این بود که راه حلی آسان مثل HTML برای این کار ارائه شود که قابلیت توسعه نیز داشته باشد .بر همین اساس ،VRML 1.0 فقط قابلیتها و دستورات پایه ای برای پیوند دادن اشیای دنیای مجازی به صحنه ها را شامل می شد .اگر بخواهیم تخصصی تر بگوییم ،VRML یک زبان صحنه پردازی است .
تفاوت VRML با HTML در این است که می تواند به مرورگر دستوراتی را در مورد محل قرار گیری اشیاء سه بعدی و رنگ آنها بدهد و به طور اساسی این امکان را فراهم می کند تا مرورگر نقطه ها را به هم متصل کند.در حالی که HTML فقط گونه های ساده متن و تصاویر از پیش ساخته شده را برای ساخت یک صفحه دو بعدی در کنار هم قرار می دهد .
VRMLچه نوع زبانی است
VRML نه یک زبان برنامه نویسی همه منظوره مثل C++ و نه زبان اسکریپت مثل جاوا اسکریپت و نه یک زبان تعریف صفحه مثل HTML است .همان طور که قبلا نیز اشاره کردم ، VRML یک زبان صحنه پردازی است که هندسه و رفتار یک صحنه سه بعدی که اصطلاحا به آن گفته می شود را معین می کند .
چه تفاوتهایی بینVRML1 ، VRML2 است ‚ به طور خلاصه صحنه های ساخته شده توسطVRML1 ، ایستا هستند که اصطلاحا به آنها گفته می شود، در حالی که در VRML2 قابلیت حرکت و نیز ارتباط با کاربر گنجانده شده است. ویژگیها و خصوصیات هر یک از این نسخه ها، به شرح زیر است :
خصوصیاتVRML 1.0
اشیای استاندارد مکعب ، کره ، مخروط، استوانه ، متن
اشیای اختیاری سطوح ، مجموعه خطوط، نشانگرها
قابلیتهایfly through ،walk through ،examine scenes
نورپردازی
دوربین ها دید از زوایای مختلف
قرار دادن بافت (texture) روی اشیاء
کلیک روی پیوندها
تعریف و استفاده مجدد از اشیاء
VRML 2.0علاوه بر خصوصیات VRML 1.0 ویژگیهای زیر را نیز داراست :
اشیای متحرک
سویچ ها
سنسورها
اسکریپت ها جاوا یا جاوا اسکریپت
درج شونده ها رنگ ، مکان ، جهت و...
رنگ و بافت زمینه
صوت فایل های WAV وMIDI
بافت های متحرک
Event routing
تعریف و استفاده مجدد از اشیاء و رفتارها (behaviors) و تاثیرپذیری و اضافه کردن گره های جدید به زبان ، با استفاده از PROTO وEXTERNPROTO
مهمترین تفاوت بین این دو نسخه این است که VRML 2.0 تعریف دقیق و پذیرفته شده برای کل دنیا دارد که توسط موسسه جهانی استاندارد به تصویب رسیده است ، (ISO/IEC-14772-1:1997) در حالی که VRML 1.0 این گونه نیست .
اولین خط هر فایل VRML 2.0 با عبارت زیر شروع می شود:
#VRML V2.0 UTF8
ولی اولین خط هر فایل VRML 1.0 با عبارت زیر شروع می شود:
#VRML V 1.0 ascii
بیشتر مرورگرهای VRML 2.0 می توانند فایل های VRML 1.0 را نیز خوانده و رندر کنند ولی هیچ کدام از مرورگرهای مخصوص VRML 1.0 نمی توانند فایل های VRML 2.0 را بخوانند .
اجزاء اساسی یک فایلVRML
در این قسمت به طور خیلی خلاصه به بررسی مفاهیم پایه ای برنامه نویسی VRML می پردازیم و بدین منظور VRML 1.0 را مورد بررسی قرار می دهیم .همه فایل های VRML با یک هدر شروع می شوند که برای VRML 1.0 به صورت زیر است :
#VRML V 1.0 ascii
که فایل را برای خوانده شدن و اجرا به مرورگر معرفی می کند .اجزاء یا اشیای پایه ای VRML را گره می نامند .سه نوع گره وجود دارد :که هندسه اشیاء را مشخص می کند، که چگونگی ترسیم شدن یک شی ء را مشخص می کند و که به کمک آنها می توانیم گروهی از اشیاء را به عنوان یک شی ء جدید تعریف کنیم .گره های مختلف پس از مرتب شدن در کنار هم یک گراف صحنه را تشکیل می دهند که آنها نیز یک VRML World یا همان صحنه را می سازند.
shape nodes
VRML 1 چهار نوع شکل از پیش تعریف شده را پشتیبانی می کند :مکعب ، مخروط ، استوانه و کره .
Property nodes
یکی از مهمترین آنها، Material node است که رنگ و ظاهر یک شی ء را مشخص می کند .رنگها بر طبق استاندارد RGB تعریف می شوند .
Grouping nodes
مهمترین نوع از این گره ها، گره Separator است که موجب می شود مجموعه ای از گره ها را بتوان به صورت یک گره واحد در نظر گرفت .
با استفاده از این اجزاء می توان برنامه ساده زیر را نوشت:
#VRML V 1.0 ascii
Separator Separator
Material
emissiveColor 100
Sphere
VRMLحداقل 36 گره مختلف را شامل می شود که هر کدام از آنها نیز بحثها و مثالهای مخصوص به خود را دارند .
به نظر من مهم این است که ابتدا قابلیتهای VRML را ببینیم و اگر واقعا آن را توانا یافتیم ، به دنبال یادگیری آن برویم .برای آشنایی با قابلیتهایVRML ، مراجعه به سایت دوستانه خودمان یعنی 3Dpersia.com را پیشنهاد می کنم